app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
↳ QTRS
↳ Overlay + Local Confluence
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(cons, app(f, x)), app(app(map, f), xs))
APP(app(del, x), app(app(cons, y), z)) → APP(eq, x)
APP(minsort, app(app(cons, x), y)) → APP(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y)))
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(filter2, app(f, x)), f), x)
APP(app(min, x), app(app(cons, y), z)) → APP(app(le, x), y)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(app(filter2, app(f, x)), f), x), xs)
APP(minsort, app(app(cons, x), y)) → APP(cons, app(app(min, x), y))
APP(app(le, app(s, x)), app(s, y)) → APP(le, x)
APP(app(min, x), app(app(cons, y), z)) → APP(if, app(app(le, x), y))
APP(app(app(app(filter2, true), f), x), xs) → APP(app(cons, x), app(app(filter, f), xs))
APP(app(del, x), app(app(cons, y), z)) → APP(app(del, x), z)
APP(app(del, x), app(app(cons, y), z)) → APP(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, y), z)
APP(app(filter, f), app(app(cons, x), xs)) → APP(filter2, app(f, x))
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(del, x), app(app(cons, y), z)) → APP(app(eq, x), y)
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(min, x), app(app(cons, y), z)) → APP(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
APP(minsort, app(app(cons, x), y)) → APP(app(del, app(app(min, x), y)), app(app(cons, x), y))
APP(app(del, x), app(app(cons, y), z)) → APP(app(if, app(app(eq, x), y)), z)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(filter2, app(f, x)), f)
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, x), z)
APP(app(app(app(filter2, false), f), x), xs) → APP(filter, f)
APP(app(le, app(s, x)), app(s, y)) → APP(app(le, x), y)
APP(app(del, x), app(app(cons, y), z)) → APP(app(cons, y), app(app(del, x), z))
APP(app(eq, app(s, x)), app(s, y)) → APP(eq, x)
APP(app(filter, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(minsort, app(app(cons, x), y)) → APP(min, x)
APP(minsort, app(app(cons, x), y)) → APP(app(min, x), y)
APP(app(eq, app(s, x)), app(s, y)) → APP(app(eq, x), y)
APP(app(app(app(filter2, true), f), x), xs) → APP(filter, f)
APP(minsort, app(app(cons, x), y)) → APP(del, app(app(min, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(le, x)
APP(app(del, x), app(app(cons, y), z)) → APP(if, app(app(eq, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(app(if, app(app(le, x), y)), app(app(min, x), z))
APP(app(app(app(filter2, true), f), x), xs) → APP(cons, x)
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
APP(minsort, app(app(cons, x), y)) → APP(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
APP(app(map, f), app(app(cons, x), xs)) → APP(cons, app(f, x))
APP(app(min, x), app(app(cons, y), z)) → APP(min, y)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
APP(app(map, f), app(app(cons, x), xs)) → APP(app(cons, app(f, x)), app(app(map, f), xs))
APP(app(del, x), app(app(cons, y), z)) → APP(eq, x)
APP(minsort, app(app(cons, x), y)) → APP(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y)))
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(filter2, app(f, x)), f), x)
APP(app(min, x), app(app(cons, y), z)) → APP(app(le, x), y)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(app(filter2, app(f, x)), f), x), xs)
APP(minsort, app(app(cons, x), y)) → APP(cons, app(app(min, x), y))
APP(app(le, app(s, x)), app(s, y)) → APP(le, x)
APP(app(min, x), app(app(cons, y), z)) → APP(if, app(app(le, x), y))
APP(app(app(app(filter2, true), f), x), xs) → APP(app(cons, x), app(app(filter, f), xs))
APP(app(del, x), app(app(cons, y), z)) → APP(app(del, x), z)
APP(app(del, x), app(app(cons, y), z)) → APP(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, y), z)
APP(app(filter, f), app(app(cons, x), xs)) → APP(filter2, app(f, x))
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(del, x), app(app(cons, y), z)) → APP(app(eq, x), y)
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(min, x), app(app(cons, y), z)) → APP(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
APP(minsort, app(app(cons, x), y)) → APP(app(del, app(app(min, x), y)), app(app(cons, x), y))
APP(app(del, x), app(app(cons, y), z)) → APP(app(if, app(app(eq, x), y)), z)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(filter2, app(f, x)), f)
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, x), z)
APP(app(app(app(filter2, false), f), x), xs) → APP(filter, f)
APP(app(le, app(s, x)), app(s, y)) → APP(app(le, x), y)
APP(app(del, x), app(app(cons, y), z)) → APP(app(cons, y), app(app(del, x), z))
APP(app(eq, app(s, x)), app(s, y)) → APP(eq, x)
APP(app(filter, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(minsort, app(app(cons, x), y)) → APP(min, x)
APP(minsort, app(app(cons, x), y)) → APP(app(min, x), y)
APP(app(eq, app(s, x)), app(s, y)) → APP(app(eq, x), y)
APP(app(app(app(filter2, true), f), x), xs) → APP(filter, f)
APP(minsort, app(app(cons, x), y)) → APP(del, app(app(min, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(le, x)
APP(app(del, x), app(app(cons, y), z)) → APP(if, app(app(eq, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(app(if, app(app(le, x), y)), app(app(min, x), z))
APP(app(app(app(filter2, true), f), x), xs) → APP(cons, x)
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
APP(minsort, app(app(cons, x), y)) → APP(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
APP(app(map, f), app(app(cons, x), xs)) → APP(cons, app(f, x))
APP(app(min, x), app(app(cons, y), z)) → APP(min, y)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
APP(app(del, x), app(app(cons, y), z)) → APP(eq, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(cons, app(f, x)), app(app(map, f), xs))
APP(minsort, app(app(cons, x), y)) → APP(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y)))
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(filter2, app(f, x)), f), x)
APP(app(min, x), app(app(cons, y), z)) → APP(app(le, x), y)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(app(filter2, app(f, x)), f), x), xs)
APP(app(min, x), app(app(cons, y), z)) → APP(if, app(app(le, x), y))
APP(app(le, app(s, x)), app(s, y)) → APP(le, x)
APP(minsort, app(app(cons, x), y)) → APP(cons, app(app(min, x), y))
APP(app(app(app(filter2, true), f), x), xs) → APP(app(cons, x), app(app(filter, f), xs))
APP(app(del, x), app(app(cons, y), z)) → APP(app(del, x), z)
APP(app(del, x), app(app(cons, y), z)) → APP(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, y), z)
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(filter, f), app(app(cons, x), xs)) → APP(filter2, app(f, x))
APP(app(del, x), app(app(cons, y), z)) → APP(app(eq, x), y)
APP(minsort, app(app(cons, x), y)) → APP(app(del, app(app(min, x), y)), app(app(cons, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(del, x), app(app(cons, y), z)) → APP(app(if, app(app(eq, x), y)), z)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(filter2, app(f, x)), f)
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, x), z)
APP(app(app(app(filter2, false), f), x), xs) → APP(filter, f)
APP(app(le, app(s, x)), app(s, y)) → APP(app(le, x), y)
APP(app(del, x), app(app(cons, y), z)) → APP(app(cons, y), app(app(del, x), z))
APP(app(eq, app(s, x)), app(s, y)) → APP(eq, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(app(filter, f), app(app(cons, x), xs)) → APP(f, x)
APP(minsort, app(app(cons, x), y)) → APP(min, x)
APP(app(eq, app(s, x)), app(s, y)) → APP(app(eq, x), y)
APP(minsort, app(app(cons, x), y)) → APP(app(min, x), y)
APP(minsort, app(app(cons, x), y)) → APP(del, app(app(min, x), y))
APP(app(app(app(filter2, true), f), x), xs) → APP(filter, f)
APP(app(min, x), app(app(cons, y), z)) → APP(le, x)
APP(app(del, x), app(app(cons, y), z)) → APP(if, app(app(eq, x), y))
APP(app(min, x), app(app(cons, y), z)) → APP(app(if, app(app(le, x), y)), app(app(min, x), z))
APP(app(app(app(filter2, true), f), x), xs) → APP(cons, x)
APP(minsort, app(app(cons, x), y)) → APP(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
APP(app(map, f), app(app(cons, x), xs)) → APP(cons, app(f, x))
APP(app(min, x), app(app(cons, y), z)) → APP(min, y)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
APP(app(eq, app(s, x)), app(s, y)) → APP(app(eq, x), y)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
EQ(s(x), s(y)) → EQ(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
eq(0, 0)
eq(0, s(x0))
eq(s(x0), 0)
eq(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
minsort(nil)
minsort(cons(x0, x1))
min(x0, nil)
min(x0, cons(x1, x2))
del(x0, nil)
del(x0, cons(x1, x2))
map(x0, nil)
map(x0, cons(x1, x2))
filter(x0, nil)
filter(x0, cons(x1, x2))
filter2(true, x0, x1, x2)
filter2(false, x0, x1, x2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(eq, app(s, x)), app(s, y)) → APP(app(eq, x), y)
s1 > EQ1
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
APP(app(del, x), app(app(cons, y), z)) → APP(app(del, x), z)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
DEL(x, cons(y, z)) → DEL(x, z)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
eq(0, 0)
eq(0, s(x0))
eq(s(x0), 0)
eq(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
minsort(nil)
minsort(cons(x0, x1))
min(x0, nil)
min(x0, cons(x1, x2))
del(x0, nil)
del(x0, cons(x1, x2))
map(x0, nil)
map(x0, cons(x1, x2))
filter(x0, nil)
filter(x0, cons(x1, x2))
filter2(true, x0, x1, x2)
filter2(false, x0, x1, x2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(del, x), app(app(cons, y), z)) → APP(app(del, x), z)
cons2 > DEL1
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
↳ QDP
APP(app(le, app(s, x)), app(s, y)) → APP(app(le, x), y)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
LE(s(x), s(y)) → LE(x, y)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
eq(0, 0)
eq(0, s(x0))
eq(s(x0), 0)
eq(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
minsort(nil)
minsort(cons(x0, x1))
min(x0, nil)
min(x0, cons(x1, x2))
del(x0, nil)
del(x0, cons(x1, x2))
map(x0, nil)
map(x0, cons(x1, x2))
filter(x0, nil)
filter(x0, cons(x1, x2))
filter2(true, x0, x1, x2)
filter2(false, x0, x1, x2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(le, app(s, x)), app(s, y)) → APP(app(le, x), y)
s1 > LE1
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
↳ QDP
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, x), z)
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, y), z)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
MIN(x, cons(y, z)) → MIN(x, z)
MIN(x, cons(y, z)) → MIN(y, z)
le(0, x0)
le(s(x0), 0)
le(s(x0), s(x1))
eq(0, 0)
eq(0, s(x0))
eq(s(x0), 0)
eq(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
minsort(nil)
minsort(cons(x0, x1))
min(x0, nil)
min(x0, cons(x1, x2))
del(x0, nil)
del(x0, cons(x1, x2))
map(x0, nil)
map(x0, cons(x1, x2))
filter(x0, nil)
filter(x0, cons(x1, x2))
filter2(true, x0, x1, x2)
filter2(false, x0, x1, x2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, x), z)
APP(app(min, x), app(app(cons, y), z)) → APP(app(min, y), z)
trivial
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
APP(minsort, app(app(cons, x), y)) → APP(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y)))
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(app(filter2, app(f, x)), f), x), xs)
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
APP(app(filter, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(filter, f), app(app(cons, x), xs)) → APP(app(app(app(filter2, app(f, x)), f), x), xs)
APP(app(filter, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
Used ordering: Combined order from the following AFS and order.
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
filter > app2 > APP1 > if
filter > app2 > true > if
filter > app2 > map > if
filter > app2 > false > if
filter > app2 > eq > if
filter > filter2 > APP1 > if
cons > filter2 > APP1 > if
cons > min > app2 > APP1 > if
cons > min > app2 > true > if
cons > min > app2 > map > if
cons > min > app2 > false > if
cons > min > app2 > eq > if
le > app2 > APP1 > if
le > app2 > true > if
le > app2 > map > if
le > app2 > false > if
le > app2 > eq > if
s > if
0 > true > if
del > app2 > APP1 > if
del > app2 > true > if
del > app2 > map > if
del > app2 > false > if
del > app2 > eq > if
del > nil > if
minsort > min > app2 > APP1 > if
minsort > min > app2 > true > if
minsort > min > app2 > map > if
minsort > min > app2 > false > if
minsort > min > app2 > eq > if
minsort > nil > if
↳ QTRS
↳ Overlay + Local Confluence
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ EdgeDeletionProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ DependencyGraphProof
APP(app(app(app(filter2, true), f), x), xs) → APP(app(filter, f), xs)
APP(app(app(app(filter2, false), f), x), xs) → APP(app(filter, f), xs)
app(app(le, 0), y) → true
app(app(le, app(s, x)), 0) → false
app(app(le, app(s, x)), app(s, y)) → app(app(le, x), y)
app(app(eq, 0), 0) → true
app(app(eq, 0), app(s, y)) → false
app(app(eq, app(s, x)), 0) → false
app(app(eq, app(s, x)), app(s, y)) → app(app(eq, x), y)
app(app(app(if, true), x), y) → x
app(app(app(if, false), x), y) → y
app(minsort, nil) → nil
app(minsort, app(app(cons, x), y)) → app(app(cons, app(app(min, x), y)), app(minsort, app(app(del, app(app(min, x), y)), app(app(cons, x), y))))
app(app(min, x), nil) → x
app(app(min, x), app(app(cons, y), z)) → app(app(app(if, app(app(le, x), y)), app(app(min, x), z)), app(app(min, y), z))
app(app(del, x), nil) → nil
app(app(del, x), app(app(cons, y), z)) → app(app(app(if, app(app(eq, x), y)), z), app(app(cons, y), app(app(del, x), z)))
app(app(map, f), nil) → nil
app(app(map, f), app(app(cons, x), xs)) → app(app(cons, app(f, x)), app(app(map, f), xs))
app(app(filter, f), nil) → nil
app(app(filter, f), app(app(cons, x), xs)) → app(app(app(app(filter2, app(f, x)), f), x), xs)
app(app(app(app(filter2, true), f), x), xs) → app(app(cons, x), app(app(filter, f), xs))
app(app(app(app(filter2, false), f), x), xs) → app(app(filter, f), xs)
app(app(le, 0), x0)
app(app(le, app(s, x0)), 0)
app(app(le, app(s, x0)), app(s, x1))
app(app(eq, 0), 0)
app(app(eq, 0), app(s, x0))
app(app(eq, app(s, x0)), 0)
app(app(eq, app(s, x0)), app(s, x1))
app(app(app(if, true), x0), x1)
app(app(app(if, false), x0), x1)
app(minsort, nil)
app(minsort, app(app(cons, x0), x1))
app(app(min, x0), nil)
app(app(min, x0), app(app(cons, x1), x2))
app(app(del, x0), nil)
app(app(del, x0), app(app(cons, x1), x2))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(filter, x0), nil)
app(app(filter, x0), app(app(cons, x1), x2))
app(app(app(app(filter2, true), x0), x1), x2)
app(app(app(app(filter2, false), x0), x1), x2)